#include "widget.h"
#include "ui_widget.h"

#include <QPushButton>

Widget::Widget(QWidget *parent)
    : QWidget(parent)
    , ui(new Ui::Widget)
{
    ui->setupUi(this);

    // 设置初始值
    ui->lcdNumber->display(10);

    // 创建 QTimer（计时器）
    timer = new QTimer(this);
    // 将计时器的timeout信号与槽函数startCountdown连接
    connect(timer, &QTimer::timeout, this, &Widget::startCountdown);
    // 将点击按钮信号与槽函数startTimer连接
    connect(ui->pushButton_start, &QPushButton::clicked, this, &Widget::startTimer);
}

Widget::~Widget()
{
    delete ui;
}

void Widget::startTimer()
{
    // 启动定时器, 参数为触发timeout的周期（ms）
    timer->start(1000);
}

void Widget::startCountdown()
{
    // 获取当前 LCDNumber 数值
    int value = ui->lcdNumber->intValue();
    if (value <= 0){
        // 数字减到0, 停止定时器.
        timer->stop();
        return;
    }
    ui->lcdNumber->display(value - 1);
}
